package br.com.ravi.deposito.dao;

import java.util.List;

import br.com.ravi.deposito.exceptions.DAOException;

/**
 * 
 * @author Rafael Ingaramo
 *
 * @param <T>
 */
public abstract class AbstractDAO<T extends HibernateModel> {
	public abstract T save(T model) throws DAOException;
	public abstract boolean delete(T model) throws DAOException;
	public abstract boolean delete(Long model) throws DAOException;
	public abstract T get(T model) throws DAOException;
	public abstract T get(Long model) throws DAOException;
	public abstract List<T> list() throws DAOException;
}